home *** CD-ROM | disk | FTP | other *** search
-
- CODE SEGMENT BYTE PUBLIC
- ASSUME CS:CODE
-
- PUBLIC setjmp, longjmp
-
- setjmp PROC NEAR
-
- POP AX ; Fetch return address from stack
- POP BX ; Buffer pointer
-
- MOV [BX],BP ; Save BP
- MOV [BX+2],SP ; , SP at return
- MOV [BX+4],AX ; and IP
-
- PUSH BX ; Restore stack
- PUSH AX
- RET
-
- setjmp ENDP
-
-
- longjmp PROC NEAR
-
- POP AX
- POP BX
- MOV BP,[BX]
- MOV SP,[BX+2]
- PUSH AX
-
- MOV AX,[BX+4]
- JMP AX
-
- longjmp ENDP
-
- CODE ENDS
- END